<!DOCTYPE html>
<!-- 声明html5标准 -->
<html lang='zh'>
<!-- 这个主要是给搜索引擎看的，搜索引擎不会去判断该站点是中文站还是英文站，所以这句话就是让搜索引擎知道，你的站点是中文站
对html页面本身不会有影响,这些现在都是html规范，你的页面越规范，就越容易被收录 -->

<head>
    <meta charset='UTF-8'>
    <!-- 声明使用UTF-8 Unicode编码，UTF-8编码优先采用的编码 -->
    <meta http-equiv='X-UA-Compatible' content='IE=edge'>
    <!--  X-UA-Compatible是针对IE新加的一个设置 声明兼容到edge -->
    <meta name='viewport' content='width=device-width, initial-scale=no'>
    <!--width:可视区域的宽度，值可为数字或关键词device-width intial-scale:页面首次被显示是可视区域的缩放级别，取值1.0则页面按实际尺寸显示，无任何缩放 -->
    <title>Document</title>
    <!-- 引入vue.js -->
    <script src='./js/vue.js'></script>
</head>

<body>
    <div id='root'>
        <div>{{num.toFixed(2)}}</div>
        <button @click='start' :disabled="isClick">开始</button>
        <button @click="end" :disabled="!isClick">暂停</button>
        <button @click="reSet">重新开始</button>
        <!-- 1 分析  开始 :利用定时器使num值发生改变. 
                     暂停: 清除定时器,使num值不发生改变.
                     重新开始: 清除定时器,把num值变为0 
        -->
    </div>
    <script>
        let vue = new Vue({
            // 选择控制区域,通过选择器去选到他，工作中一般使用id选择器;
            el: '#root',
            // 数据储存位置
            data: {
                num: 0,
                intervel:null, //定时器
                isClick:false

            },
            // 方法的储存位置
            methods: {
                start() {
                    this.isClick=true;
                    // 1 利用缓存将计时器保存到全局 
                    //   2:在data里面添加变量,在start将计时器赋值给变量intervel
                    // localStorage.inter = setInterval(() => {
                    //     // console.log(this)
                    //     this.num += 0.01;
                    // }, 10)
                    this.intervel = setInterval(() => {
                        // console.log(this)
                        this.num += 0.01;
                    }, 10)
                },
                end() {
                    this.isClick=false;
                    clearInterval(this.intervel);
                },
                reSet: function () {
                    this.isClick=false;
                    clearInterval(this.intervel);
                    this.num=0;
                }
            }
        })
    </script>
</body>

</html>